Motion detection is used in many applications, such as security cameras, game cameras, or motion compensated temporal filtering (MCTF). For the latter, a filter adaptively combines a previous (reference) frame and a current (target) frame. The filter decides locally how to combine the two frames to reduce noise while limiting filtering artifacts. Conventional MCTF reduces noise by taking a weighted average of the current frame and one or more previous frames. In a recursive filter, the “one or more previous frames” are MCTF outputs. MCTF reduces noise because when there is no motion, or the motion is correctly modeled and compensated, the MCTF output is a weighted average of noisy samples of the same image sample, which will statistically be less noisy than a single sample. Typically, the filter will use (weight) the reference more strongly the more the filter determines that, locally, there is no motion. A problem with conventional temporal filter blending occurs where the current target frame is too strongly blended with the reference frames, resulting in a filtered picture that does not fully reflect the current target frame.
It would be desirable to implement a temporal filter with a separate criteria setting a maximum amount of temporal blending.